package com.jiezheng.huinong.db.conf;

import java.util.List;

import com.jiezheng.huinong.model.PeopleInfo;

public interface IPeopleManageDAO {
	
	/**
	 * 增加居民信息
	 */
	public void addPeople(PeopleInfo people);

	/**
	 * 删除居民信息
	 */
	public void deletePeople(String idCard);
	
	/**
	 * 改变居民信息状态
	 */
	public void changeStatus(PeopleInfo people);

	/**
	 * 修改居民信息
	 */
	public void modifyPeople(PeopleInfo people);

	/**
	 * 根据idCard获取相关的居民信息信息
	 * 
	 * @param peopleNo
	 * @return
	 */
	public PeopleInfo getPeopleInfo(String idCard);
	
	/**
	 * 所有居民信息信息有身份信息
	 * 
	 * @param peopleNo
	 * @return
	 */
	public List<String> getAllIdCards();

	/**
	 * 取得所有居民信息信息的总数
	 * 
	 * @return
	 */
	public Integer getTotalPeopleNum(String cond, String deptNo);
	
	/**
	 * 取得所有居民信息信息的总数, 未送审居民信息
	 * 
	 * @return
	 */
	public Integer getTotalToAuditPeopleNum(String cond, String deptNo);
	
	/**
	 * 取得所有居民信息信息的总数, 根据状态
	 * 
	 * @return
	 */
	public Integer getTotalPeopleNum(int status, String cond, String deptNo);

	/**
	 * 分页取居民信息信息数据
	 * **/
	public List<PeopleInfo> getPeopleInfo(String cond, String deptNo, Integer startRow, Integer rows);
	
	/**
	 * 分页取居民信息信息数据, 未送审
	 * **/
	public List<PeopleInfo> getToAuditPeopleInfo(String cond, String deptNo, Integer startRow, Integer rows);
	
	/**
	 * 分页取居民信息信息数据, 根据状态
	 * **/
	public List<PeopleInfo> getPeopleInfo(int status, String cond, String deptNo, Integer startRow, Integer rows);
	
	/**
	 * 居民信息是否存在，用于申请的校验
	 * @param people
	 * @return
	 */
	public boolean isPeopleExist(PeopleInfo people);

	/**
	 * 通过审核所有居民信息状态
	 */
	public void approveAll(PeopleInfo people);
}
